package com.Jano.service.Impl;

import com.Jano.dao.Impl.QuestionnaireDaoImpl;
import com.Jano.dao.QuestionDao;
import com.Jano.dao.QuestionnaireDao;
import com.Jano.dto.CompleteQuestionnaireDto;
import com.Jano.entity.Questionnaire;
import com.Jano.exception.BusinessException;
import com.Jano.service.QuestionnaireService;
import org.apache.commons.lang3.StringUtils;

import java.util.List;
import java.util.Objects;

/**
 * description: QuestionnaireService <br>
 * date: 2022/6/6 5:26 PM <br>
 * author: zoumaoji <br>
 * version: 1.0 <br>
 */
public class QuestionnaireServiceImpl extends AbstractBaseServiceImpl implements QuestionnaireService {
    QuestionnaireDao questionnaireDao = new QuestionnaireDaoImpl();

    @Override
    public void createQuestionnaire(int userId, String title) {
        if (StringUtils.isBlank(title)) {
            throw new BusinessException("问卷标题不能为空");
        }
        throwIfFalse(isExistQuestionnaire(title),"此问卷标题已被创建，请更换");
        questionnaireDao.CreateQuestionnaire(userId,title);
    }

    @Override
    public Boolean isExistQuestionnaire(String title) {
        throwIfTrue(!Objects.isNull(questionnaireDao.selectQuestionnaireIdByTitle(title)),"问卷标题已存在");
        return true;
    }

    @Override
    public Questionnaire selectQuestionnaireByTitle(String title) {
        if (StringUtils.isBlank(title)) {
            throw new BusinessException("问卷题目不能为空");
        }
        return questionnaireDao.selectQuestionnaireIdByTitle(title);
    }

    @Override
    public List<CompleteQuestionnaireDto> getAllQuestionnaireByUserId(int userId) {

        return null;
    }
}
